/**
 * WebSocket 模块统一导出
 * Unified WebSocket Module Exports
 * 
 * 提供 WebSocket 相关的所有功能：
 * - 配置管理（config.ts）
 * - 工厂单例（factory.ts）
 * - WebSocketManager 实现
 */

// ========================================
// 导出配置模块
// ========================================
export {
  // 类型
  type WebSocketConfig,
  // 函数
  getWebSocketConfig,
  getWebSocketURL,
  getMarketDataWebSocketConfig,
  // 常量
  WEBSOCKET_PATHS,
  DEFAULT_CONFIG,
} from './config';

// ========================================
// 导出工厂模块
// ========================================
export {
  // 函数
  getWebSocketManager,
  getMarketDataWebSocketManager,
  destroyWebSocketManager,
  destroyAllWebSocketManagers,
  getActiveWebSocketCount,
  getActiveWebSockets,
  // 默认导出的工厂对象
  WebSocketFactory,
} from './factory';

// ========================================
// 导出 WebSocketManager
// ========================================
export { WebSocketManager } from './WebSocketManager';

// 导出类型
export type {
  WebSocketCallbacks,
  WebSocketMessage,
  WebSocketManagerConfig,
} from './WebSocketManager';

// 导出状态枚举
export { WebSocketState } from './WebSocketManager';

// ========================================
// 默认导出（工厂对象）
// ========================================
export { default } from './factory';

